package com.isoftstone.project.system.dict.mapper;

import java.util.List;
import com.isoftstone.framework.domain.Page;
import com.isoftstone.project.system.dict.domain.Dict;
import com.isoftstone.project.system.domain.SysDict;
import org.apache.ibatis.annotations.Param;

/**
 * 数据字典Mapper接口
 *
 * @author guoX
 * @date 2021-02-01
 */
public interface DictMapper {
    /**
     * 查询数据字典
     *
     * @param dictid 数据字典ID
     * @return 数据字典
     */
    public Dict getDictById(String dictid);

    /**
     * 查询数据字典列表
     *
     * @param page 分页参数
     * @return 数据字典集合
     */
    public List<Dict> getDictlistPage(Page page);

    /**
     * 新增数据字典
     *
     * @param dict 数据字典
     * @return 结果
     */
    public int insertDict(Dict dict);

    /**
     * 修改数据字典
     *
     * @param dict 数据字典
     * @return 结果
     */
    public int updateDict(Dict dict);

    /**
     * 删除数据字典
     *
     * @param dictid 数据字典ID
     * @return 结果
     */
    public int deleteDictById(String dictid);

    /**
     * 批量删除数据字典
     *
     * @param dictids 需要删除的数据ID
     * @return 结果
     */
    public int deleteDictByIds(String[] dictids);


    List<SysDict> getDictByType(@Param("type") String type) throws Exception;

    SysDict getDictByTypeAndCode(@Param("type") String type, @Param("code") String code) throws Exception;

}
